home *** CD-ROM | disk | FTP | other *** search
/ Gold Medal Software 2 / Gold Medal Software Volume 2 (Gold Medal) (1994).iso / utils / condor40.arj / CONDOR.DOC < prev    next >
Text File  |  1993-07-28  |  47KB  |  1,263 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.                       CONDOR
  8.                Copyright 1993 by Larry Mears
  9.                    All Rights Reserved
  10.                    version  4.0
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.          "Requires a AT BIOS or later, CGA, EGA or VGA."
  19.  
  20.           ---------------------------------------------------------
  21.          ANY program that supports "EXTERNAL" ANSI (ANSI.SYS)
  22.          already has __INSTANT__  Condor support built it!
  23.           ---------------------------------------------------------
  24.  
  25.  
  26.  
  27.  
  28.        CONDOR is DONATION-WARE   there are no limits whatsoever.
  29.        If you use Condor please send $15 donation or if you can't
  30.        afford that much send what you can to encourage updates to
  31.        CONDOR.  So far NO ONE has sent anything so I must be wasting
  32.        my time once again.  If you would like to insure that a
  33.        CONDOR v4.1 is forthcoming ( Even one person counts ),
  34.        Send a small check or money order to:
  35.  
  36.        Larry Mears
  37.        11027 Crestfield Dr.
  38.        Huntsville, AL 35803
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.     Disclaimer:  There is no gaurantee as to the performance of
  46.              CONDOR.  The user assumes ALL risks involved
  47.              from the use of CONDOR.
  48.  
  49.  
  50.  
  51.     TERMINAL, BBS, OFFLINE READER, DIGI Publisher authors it's REAL
  52.            easy for you to have CONDOR graphics in your program!
  53.                   Please see How_to.txt
  54.  
  55.  
  56.                       Index
  57.  
  58.  
  59.     Installation .............................................  1
  60.  
  61.     Description  .............................................  1
  62.  
  63.     Syntax       .............................................  2
  64.  
  65.     Constants    .............................................  3
  66.  
  67.     Variables    .............................................  3
  68.  
  69.     Aborting     .............................................  3
  70.  
  71.     Condor in Text modes .....................................  3
  72.  
  73.  
  74.  
  75.                 CONDOR COMMANDS
  76.     R_ Resolution .............................................  4
  77.     b_ Sound Effects ..........................................  5
  78.     C_ Color Set  .............................................  5
  79.     D_ Drawto     .............................................  6
  80.     F_ Flood Fill .............................................  6
  81.     H_ Hollow Set .............................................  6
  82.     L_ Lines      .............................................  7
  83.     M_ Drawing Mode ...........................................  7
  84.     n_ Notes Play Pitches .....................................  8
  85.     O_ Circle     .............................................  8
  86.     P_ Plot a Polymarker ......................................  8
  87.     p_ Position Cursor ........................................  9
  88.     S_ Setcolor Register ......................................  9
  89.     s_ Screen Clear and Control ...............................  10
  90.     T_ Type of POLYMARKER .....................................  10
  91.     t_ Timed Pause ............................................  10
  92.     w_ Write Text .............................................  11
  93.     X_ eXtended Commands ......................................  12
  94.     Z_ Rectangle  .............................................. 14
  95.     z_ Text Rectangle .......................................... 14
  96.     /_ Comment, REMark ......................................... 14
  97.     &_ LOOPing    .............................................. 15
  98.     <_ INPUT Command ........................................... 17
  99.     ?_ ASK CONDOR (auto-detection) ............................. 19
  100.     ANSI Support  .............................................. 20
  101.  
  102.  
  103.                        -1-
  104.  
  105.                       CONDOR
  106.                Copyright 1993 by Larry Mears
  107.                    All Rights Reserved
  108.                    version  4.0
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.                    INSTALLATION
  117.                    ------------
  118.        Condor is a console device driver.  To use it you add a line
  119.     in your CONFIG.SYS file like:  DEVICE=CONDOR.SYS  If you have
  120.     a line in your CONFIG.SYS file like:  device=ANSI.SYS  remove it.
  121.     USERS should also read and EDIT the ACCESS.BAT file to set their
  122.     ACCESS CODE right NOW!   SYSOPs must LOCK out the < INPUT on the
  123.     BBS local side  refer to page -13-  Also see LOCK & UNLOCK.BAT
  124.  
  125.  
  126.  
  127.  
  128.                     DESCRIPTION
  129.        CONDOR is a ANSI.SYS replacment of sorts.  CONDOR enables your
  130.     CGA/EGA/VGA computer to do bitmap style graphics ANY time from DOS or
  131.     from any program that uses DOS CON: for text output.  With ANSI style
  132.     graphics you get low resolution blocky looking 80x25 graphics, with
  133.     CONDOR you get from 320x200 to 640x480 pixel graphics and ANSI too if
  134.     you want because CONDOR recognizes most ANSI commands and can execute
  135.     ANSI commands even while in a graphics mode.  CONDOR will enhance
  136.     online communications with it's abilities.  Terminal and BBS authors
  137.     will be able to access CONDOR by simply going through DOS for text
  138.     output, the faster DIRECT method only works in TEXT modes and will
  139.     not access CONDOR.SYS  In TURBO C a  bdos(2,character,0);  command is
  140.     all it takes to    give a terminal CONDOR graphics and sound POWER!
  141.     With CONDOR 4.0+ it is NOW possible to DRAW a ICON and use CONDOR's
  142.     X4/X5/X6   T and <  commands to achieve POINT and CLICK operation of
  143.     BBSs or the DOS command line.
  144.  
  145.  
  146.        After you install CONDOR and reboot your system try the included
  147.     demo files by simply typing them from DOS.
  148.     Like: C:\TYPE wabbit.r16   (.r16)=resolution mode 16,  or  if you like
  149.     you can just type DEMO and the batch file will execute all the demos
  150.     by just using DOS's  "TYPE"  command, Condor is at DOS level!
  151.     The DEMO uses EGA and VGA screen modes.
  152.  
  153.  
  154.                     -2-
  155.        SYNTAX ...
  156.        As most know ANSI uses a esc[pram;pramCommand sequence it might
  157.        look like esc[31;42m  CONDOR is very different it is buffered.
  158.        You load Condor's buffer and then execute it.  Condor has a
  159.        8003 byte buffer.   To load Condor's buffer you use a sequence
  160.        like  esc{command,data:command,data: ...  esc}  the 'esc' part
  161.        is really the escape character asci character 27.  Condor
  162.        code will look like this:
  163.        esc{R6:C1,1:L0,0,639,199:t90:R3:esc}  that only loads the buffer
  164.        Use  esc#  to execute the buffer.
  165.  
  166.        The execute command actually wants a 3rd character from
  167.        A-z ( ascii values 65 to 122 including the weird characters
  168.          in between upper and lower case)
  169.        but if it encounters a SPACE or LF or any ascii character out of
  170.        the A-z range it executes as if it received a A.  This is
  171.        so Condor's buffer can be divided up into sub-blocks and the
  172.        esc# command can execute a specific block.  Sub-blocks are not
  173.        required, they are a feature for repetive things like music.
  174.        Sub-blocks within Condor's buffer begin with the { character and end
  175.        with the } character.  They don't have the esc character like the
  176.        beginning and ending block markers for the whole buffer, although
  177.        BLOCK A is actually the esc{  mark at the beginning of the Condor
  178.        buffer. A Sub-block must have a { start marker but doesn't require
  179.        a ending marker, in this case the { sub-block marker acts as a entry
  180.        point in the buffer and will execute till it hits a } character so
  181.        several { markers can share one } marker.  The position of the
  182.        { sub-block marker dictates it's name.  By the way carriage returns
  183.        and line feeds are striped from the buffer at load time but SPACES
  184.        remain.  MOST of the commands require that the computer be in a
  185.        graphics mode too, so you set that with the R command.
  186.         ( REPLACE esc with the escape character )
  187.  
  188.         esc{R6:b1:}
  189.            {L10,10,140,190:
  190.            {b12:}
  191.            {t48:R3:esc}
  192.  
  193.            To execute this in sequence you would go
  194.            esc#A esc#B esc#C esc#D  (spaces for clarity only)
  195.            Block C would get excuted twice but with this setup
  196.            you could enter at block C and skip B.
  197.            If you wanted though you could execute in any order but
  198.            for this to work right you need to execute that R6: command
  199.            first. The R3: command brings you back to a text mode.
  200.            You could go esc#A esc#B esc#D
  201.  
  202.     IMPORTANT!! MOST ALL DOS programs run in text mode so you should
  203.         ALWAYS switch back when done with your graphic.  You can
  204.         use the 't' command to pause for a short display time then
  205.         do a R3: back to text mode.
  206.  
  207.       This might be a little confusing but sub-blocks aren't required
  208.       you could just go esc{R6:b1:L10,10,140,190:b12:R3:esc}esc#A and
  209.       do it all in one block.  Sub-blocks are just for added utility.
  210.       Condor's buffer remains intact until another esc{ ... esc} is
  211.       encountered, so you can execute it several times with the esc#A and
  212.       only load it once.   You might do some repetive things so Condor's
  213.       buffer and sub-blocks can be really useful.
  214.  
  215.  
  216.  
  217.                     -3-
  218.  
  219.     CONSTANTS range from 0 to 9999.   Condor will only grab 4 digits,
  220.     trying to pass it more will mess things up.  If you did something
  221.     like this L25555100,90,10,10:  the 25555100 part would be interpreted
  222.     as L2555,100,90,10,10: and that 2555 would be off screen anyway.
  223.  
  224.     VARIABLES only exist in the '&' LOOP they are x,y,+,-,! refer
  225.     to the section on the '&' LOOP command for details.
  226.  
  227.     ABORTing...  The USER can press the CTRL key to abort a
  228.     't' pause command  OR to abort a '&' LOOP.  A more
  229.     drastic abort is the ALT key, it will abort a 't' pause
  230.     and the '&' LOOP plus abort the buffer BLOCK being executed
  231.     and reset the screen to the mode it was in at bootup, plus
  232.     set the text color in graphics and text mode to value 7 white.
  233.  
  234.  
  235.     CONDOR COMMANDS in TEXT MODES:
  236.       A few commands can be executed in a text mode like the sound effect
  237.     command 'b'.   These commands can only be excuted once in text mode
  238.     then buffer execution will cease.  For example esc{b1:b4:esc}esc#A
  239.     would only execute the b1: command then exit, however if you set the
  240.     mode to a graphics mode both b1:b4: would excute.  This is a safety
  241.     feature that was put in to keep someone from executing a graphics
  242.     command while in a text mode (causes lockups) BUT I wanted to allow
  243.     access someway to certain commands from text modes because text output
  244.     is much faster and you might just want a beep or blurp.  You could do
  245.     multiple commands with sub-blocks while in a text mode like:
  246.     esc{b1:}{b4:esc}esc#Aesc#B    Commands that can be executed in this
  247.     limited manner in text modes are the '&' LOOP command,
  248.     the 'R' resolution switch command, the 'n' musical NOTES command,
  249.     't' timed pause, the 'w' command WRITE text at column / row, the
  250.     'p' position text cursor at column / row, the 'C' color command,
  251.     'b' sound effects, the 'z' command write a rectangle of characters,
  252.     and '?' ASK CONDOR system information (auto-detection).
  253.  
  254.                       -4-
  255.  
  256.                 CONDOR COMMANDS
  257.                 ---------------
  258.  
  259.     R set Resolution   syntax example R6:
  260.     ----------------
  261.             Switchs screen resolutions. This is the Most important
  262.             command since most Condor commands need to be in a
  263.             GRAPHIC mode to work.  The R command
  264.             automatically adjusts characters for the screen mode.
  265.             Sets the HOLLOWS to TRUE (circles and rectangles will
  266.             not be filled).  Sets the point,line, and fill colors
  267.             to 1.  Sets the character attribute to 7, that's
  268.             white characters with black background, sets the
  269.             DRAW Mode to REPLACE, sets polymarkers to POINT and
  270.             polymarker size to 1, also sets the number of text
  271.             lines to 25.  The R command serves as a reset
  272.             command of sorts as well as a resolution switching
  273.             command.   This command is supposed to have no effect
  274.             if a value is passed greater than the video hardware
  275.             can support, however I am unable to test this since
  276.             I have only VGA.
  277.  
  278.             Command identifier  = R
  279.             Parameter           = Graphics mode to set
  280.  
  281.  
  282.             Parameter       Screen         Colors  Type
  283.             values          Resolution
  284.             0               40x25          16      TEXT
  285.             1               40x25          16      TEXT
  286.             2               80x25          16      TEXT
  287.             3               80x25          16      TEXT
  288.             4               320x200        4       GRAPHICS
  289.             5               320x200        4       GRAPHICS
  290.             6               640x200        2       GRAPHICS
  291.             7               80x25          2       TEXT
  292.             8               N/A            N/A     N/A
  293.             9               N/A            N/A     N/A
  294.             10              N/A            N/A     N/A
  295.             11              N/A            N/A     N/A
  296.             12              N/A            N/A     N/A
  297.             13              320x200        16      GRAPHICS
  298.             14              640x200        16      GRAPHICS
  299.             15              640x350        2       GRAPHICS
  300.             16              640x350        16      GRAPHICS
  301.             17              640x480        2       GRAPHICS
  302.             18              640x480        16      GRAPHICS
  303.             19              320x200        256     GRAPHICS
  304.  
  305.         EXAMPLE:
  306.         esc{R6:L319,10,219,110:D419,110:D319,10:t48:b15:R3:esc}esc#A
  307.  
  308.         Another way:
  309.         esc{L319,10,219,110:D419,110:D319,10:t48:b15:R3:}{R6:esc}
  310.         esc#B esc#A
  311.         If you went esc#A esc#B nothing would happen except sub-block
  312.         B execution because the A block tries to draw lines and
  313.         that can only be done if a GRAPHICS mode is set, which
  314.         block B sets with the R6: command.
  315.  
  316.                     -5-
  317.  
  318.  
  319.     b sound effects     syntax example  b19:
  320.     ---------------
  321.  
  322.  
  323.                 Plays sound effects using the computer's
  324.                 speaker.  It's bells and whistle time!
  325.  
  326.  
  327.                 Command identifier = b
  328.                 Parameter          = effect number
  329.  
  330.         Effect #           Name:
  331.         --------           -----
  332.           0                pute
  333.           1                yonk
  334.           2                Wood Pecker
  335.           3                British siren
  336.           4                buzz
  337.           5                Laughing Alien
  338.           6                woops
  339.           7                click-pop
  340.           8                meep
  341.           9                barber shears
  342.          10                zip-whistle
  343.          11                hey
  344.          12                insect
  345.          13                boing
  346.          14                broken chime
  347.          15                pebble in puddle
  348.          16                beep
  349.          17                long oh
  350.          18                harmonics
  351.          19                pinball
  352.          20                buzz-zapper
  353.  
  354.      EXAMPLE: esc{b19:esc} esc#A
  355.           esc{R6:b1:b14:b20:b7:t48:R3:esc}esc#A
  356.           esc{R6:&0,20,1,0,b,1,x:R3:esc}esc#A
  357.     .......................................................................
  358.  
  359.     C color set     syntax example C1,2:
  360.     -----------
  361.             C  =  command identifier
  362.             Selects the register number to perform the screen
  363.             operation with.
  364.  
  365.             1st parameter selects screen operation color to change.
  366.             0 = Polmarker color, used for the (P  Plot command),
  367.                          and the < INPUT command.
  368.             1 = line color,  used for the (L  Line Command)
  369.             2 = fill color,  used for the (F  Fill commands and
  370.                      Z rectangle, and C circle )
  371.             3 = text color,  used with the ( w command ).
  372.  
  373.             2nd parameter selects the register number 0 to 255
  374.             depending on the graphic mode.
  375.  
  376.             EXAMPLE esc{R19:C1,2:L0,0,100,199:R3:esc}esc#A
  377.  
  378.                     -6-
  379.  
  380.      D line DRAWTO      syntax example D149,99:
  381.      -------------
  382.             D = command identifier
  383.             Draws a line from the place the last place
  384.             a line or point was drawn.
  385.             Use the C command to change line color.
  386.  
  387.             1st parameter = X coordinate
  388.             2nd parameter = Y coordinate
  389.  
  390.             EXAMPLE  esc{R6:P10,10:D100,20:D50,50:D10,10:R3:esc}
  391.                  esc#A
  392.  
  393.     .......................................................................
  394.  
  395.     F flood FILLs   syntax example F600,10,1: or f600,10:
  396.     -------------
  397.             F or f = command identifier
  398.             'F' Fills a area by replacing ALL colors starting
  399.             at specified X,Y coordinates till it hits
  400.             a border of a specified OPERATION COLOR.
  401.             If the command used is the 'f' fill the
  402.             color at X,Y is gotten and replaced with the
  403.             fill color set by the 'C'olor command.  The
  404.             3rd parameter is dropped for the 'f' command.
  405.  
  406.             1st parameter = X coordinate
  407.             2nd paraneter = Y coordinate
  408.             3rd parameter = (0 to 3) specified OPERATION COLOR:
  409.                      0 for current point color
  410.                      1 for current line  color
  411.                      2 for current fill  color
  412.                      3 for current text  color
  413.  
  414.             EXAMPLE esc{R16:C1,12:C2,2:P100,10:D200,100:
  415.                     D0,100:D100,10:F150,90,1:t48:b15:R3:esc}
  416.                     esc#A
  417.  
  418.     .......................................................................
  419.  
  420.  
  421.     H hollow set    syntax example H0:
  422.     ------------
  423.             H = command identifier
  424.             When on non solids are drawn, a circle will be
  425.             drawn instead of a disk.
  426.  
  427.             Parameter  1=on  0=off
  428.  
  429.             EXAMPLE esc{R6:H0:Z10,10,100,50:H1:Z110,10,200,50:
  430.                     t90:b7:R3:esc}esc#A
  431.  
  432.                     -7-
  433.  
  434.     L draw LINE     syntax example L0,0,300,150:
  435.     -----------
  436.             L = command identifier
  437.             Draws a line between specified points.
  438.             Use the C command to change line color.
  439.  
  440.             1st parameter = beginning X coordinate
  441.             2nd parameter = beginning Y coordinate
  442.             3rd parameter = ending    X coordiante
  443.             4th parameter = ending    Y coordinate
  444.  
  445.             EXAMPLE esc{R6:L0,0,639,0:L639,0,639,199:
  446.                     L639,199,0,199:L0,199,0,0:
  447.                     L0,199,639,0:L0,0,639,199:
  448.                     t90:b19:R3:esc}esc#A
  449.  
  450.     .......................................................................
  451.  
  452.     M drawing MODE  syntax example M2:
  453.     --------------
  454.  
  455.             M = command identifier
  456.  
  457.             Parameter sets drawing mode.
  458.             1 = replace     2 = XOR
  459.  
  460.             Will not work in graphics mode 19.
  461.             Effects anything drawn after setting but only
  462.             after a C command.  So you set M  then do
  463.             a C (color set) anything draw with that color
  464.             will be drawn in XOR mode.  XOR mode is good
  465.             for drawing things on top of things because
  466.             if you draw it twice the XORed drawing disappears
  467.             leaving the background untouched!  Because
  468.             XOR makes the fill command go koo-koo XOR is disabled
  469.             whenever a fill operation occurs.  You have to
  470.             set the color again with the C command to restore
  471.             XOR mode after a fill.   To disable the XORing
  472.             altogether use M1: or do a res switch with the
  473.             R command.
  474.  
  475.             EXAMPLE  esc{R6:M2:H1:C1,1:Z100,20,200,198:
  476.                      Z50,50,250,160:t90:b7:Z50,50,250,160:
  477.                      t48:b20:R3:esc}esc#A
  478.  
  479.                     -8-
  480.     n  notes play   syntax example:
  481.     -------------   n0,4000,1000,1:  or n1,0,9999,100,10,500,1:
  482.  
  483.             n = command identifier
  484.             Uses your computer's 1 bit sound and speaker to
  485.             play pitches from 0 to 9999  timed sustains with
  486.             sound shut off flag.  Or can play a PITCH FROM TO
  487.             with STEP and delays between steps with trailing
  488.             SUSTAIN and sound shut on off FLAG.
  489.  
  490.            IF 1st parameter is 0 then
  491.               2nd parameter = pitch, range(0-9999)
  492.               3rd parameter = sustain in 18.2ths of a sec range(0-9999)
  493.               4th parameter = OFF FLAG  0=leave playing,  1=shut off
  494.  
  495.            IF 1st parameter is 1 then
  496.               2nd parameter = FROM pitch, value range(0-9999)
  497.               3rd parameter = TO   pitch, value range(0-9999)
  498.               4th parameter = STEP value, range(1-9999)
  499.               5th parameter = DELAY between STEPs  18.2ths sec(0-9999)
  500.               6th parameter = SUSTAIN when TO value reached 18.2ths sec
  501.               7th parameter = OFF FLAG  0=leave playing  1=shut off
  502.  
  503.  
  504.              EXAMPLE: esc{R6:n0,1100,4,0:n0,1200,4,0:n0,1300,4,0:
  505.                   n0,1400,4,0:n0,1500,4,0:n0,1600,4,0:
  506.                   n0,1700,4,0:n0,1800,4,0:n0,1900,4,0:
  507.                   n0,2000,4,0:n0,2100,4,0:n0,2200,4,0:
  508.                   n0,2300,4,0:n0,2400,4,0:n0,2500,4,1:
  509.                   R3:esc}esc#A
  510.  
  511.     .......................................................................
  512.  
  513.     O   CIRCLE     syntax example O159,100,75:
  514.     ----------
  515.             O = command identifier
  516.             Draws a disc or circle depending if the
  517.             H command is active or not.  This command
  518.             does not do a aspect ratio, so the best
  519.             circles will be in the 320x200 and 640x480
  520.             graphics modes.
  521.  
  522.             1st parameter = X coordinate of circle center
  523.             2nd parameter = Y coordinate of circle center
  524.             3rd parameter = radius of circle
  525.  
  526.         EXAMPLE  esc{R6:O319,99,40:t48:R3:esc}esc#A
  527.     .......................................................................
  528.  
  529.     P  PLOT a polymarker  syntax example P149,99:
  530.     --------------------
  531.             P = command identifier
  532.             Plot a POLYMARKER on the screen.
  533.             Use the C  command to alter the color.
  534.             The 'T' command will change what's plotted.
  535.  
  536.             1st parameter = X coordinate
  537.             2nd parameter = Y coordinate
  538.  
  539.         EXAMPLE esc{R6:T3,1:P100,100:P0,0:P40,188:t48:R3:esc}esc#A
  540.  
  541.                     -9-
  542.  
  543.     p position cursor   syntax example  p78,24:
  544.     -----------------
  545.             p = Command identifier
  546.             Positions the text cursor at column, row.
  547.             The max row is limited by the 's' command.
  548.  
  549.             1st parameter = column (1 to 80 )
  550.             2nd parameter = row    (1 to 25 )
  551.  
  552.             EXAMPLE esc{R6:p10,21:esc}esc#A
  553.      ......................................................................
  554.  
  555.      S setcolor register
  556.      -------------------
  557.             S = command identifier
  558.             Sets one COLOR register for CGA/EGA/VGA
  559.             the syntax is different depending on the
  560.             adapter and current graphics mode set by
  561.             the R command.  This command also can change
  562.             the BORDER color and switch BLINKing on/off.
  563.             Supports (R19:) 320x200 256 colors too.
  564.  
  565.          IF in a CGA graphics mode R6: R5: or R4:
  566.              ---          syntax is like: S1,1:
  567.             1st parameter selects which to alter
  568.                 a Color Palette or
  569.                 a BORDER and BACKGROUND change.
  570.                  0=Set border & background
  571.                  1=Set color palette
  572.             2nd parameter is color value for background & border
  573.                 (0-15) or color palette(0-1) to change to.
  574.  
  575.          IF in a EGA/VGA graphics mode R13: TO R18:
  576.              -------    syntax is like: S0,2,63:  to set a register
  577.                 syntax is like: S1,63:    to set border color
  578.                 syntax is like: S2,1:     to set blink flag
  579.             1st parameter selects which to alter
  580.                 color register, border color or blink
  581.  
  582.                    To set a COLOR REGISTER:
  583.                    1st prammeter = 0
  584.                    2nd parameter = REGISTER number ( 0 to 15 )
  585.                    3rd parameter = Color Val(0-63) (0-15)R13:,R14:
  586.  
  587.                    To set the BORDER COLOR:
  588.                    1st parameter = 1
  589.                    2nd parameter = color Val(0-63) (0-15)R13:,R14:
  590.  
  591.                    To  turn BLINK on/off
  592.                    1st parameter = 2
  593.                    2nd parameter = 0 blink OFF or
  594.                            1 blink ON
  595.  
  596.          IF in VGA/MCGA graphics mode R19:  (320x200  256 colors)
  597.            --------          syntax is like: S227,24,255,0:
  598.                 1st parameter = color register number 0-255
  599.                 2nd parameter = RED   value ( 0 - 63 )
  600.                 3rd parameter = GREEN value ( 0 - 63 )
  601.                 4th parameter = BLUE  value ( 0 - 63 )
  602.  
  603.                     -10-
  604.  
  605.     s Screen Clear & Control    syntax example s0: or s30:
  606.     ------------------------
  607.             s = Command identifier
  608.  
  609.             Clears the screen by resetting the graphics mode to
  610.             whatever mode is currently selected or adjusts
  611.             the number of text lines the screen has.  This command
  612.             will CLEAR the WHOLE screen, use a ANSI esc[2J to
  613.             only clear the TEXT area set by 's'.
  614.  
  615.             Parameter = 0 to 30
  616.                IF this parameter = 0 then just CLEAR whole screen.
  617.                IF this parameter greater than zero then set TEXT
  618.                   lines screen has:
  619.                   30 lines max(available in 480 tall modes only)
  620.                   1  line minimum
  621.  
  622.         EXAMPLE esc{R18:L10,10,639,180:t32:b12:s30:t48:b17:esc}esc#A
  623.     .......................................................................
  624.  
  625.     T  polymarker TYPES     T3,4:
  626.     ---------------------
  627.             T = command identifier
  628.             Sets the polymarker(shape) to use.
  629.             EFFECTS the pointer for the < INPUT comand
  630.             and the output of the P "plot" command.
  631.             Use the C command to alter the Color.
  632.  
  633.             1st parameter picks type of polymarker
  634.                0 = pixel
  635.                1 = up arrow         2 = cross hair
  636.                3 = 5 point star     4 = rectangle
  637.                5 = diagonal cross   6 = diamond
  638.                7 = rectangle +      8 = circle +
  639.                9 = trivit
  640.  
  641.             2nd parameter = size of polymarker, range 1 thru 255
  642.  
  643.         EXAMPLE esc{R18:C0,12:T3,10:P100,100:t48:R3:esc}esc#A
  644.     .......................................................................
  645.  
  646.     t  Timed Pause     syntax example t52:
  647.     --------------
  648.             t = Command identifier
  649.  
  650.             Wait for specified 18.2ths of a second.
  651.             You can pause up to 1092 units, which
  652.             is one full minute.  To ABORT a Pause
  653.             the User can press the Ctrl key.
  654.  
  655.             Parameter = 1 to 1092  18.2ths of a second
  656.  
  657.             EXAMPLE: esc{R6:Z20,20,150,140:t52:b19:R3:esc}esc#A
  658.  
  659.  
  660.  
  661.                     -11-
  662.  
  663.     w  Write text   syntax example   w10,20,LOOK AT US NOW - by Joe Walsh@
  664.     -------------
  665.             w = Command identifier
  666.  
  667.             Writes a string of characters ending with a
  668.             @ symbol at the column, row specified.
  669.             It's VERY VERY important to end the string with @,
  670.             If you don't this command will eat the the code
  671.             after it!  Pressing the ALT key may recover.
  672.             The @ symbol can be printed only if it is
  673.             the only character in the string to print,
  674.             ie  w10,10,@   would print the @ symbol
  675.             at location 10,10.  Also note that the
  676.             : need not be used after the @ symbol.
  677.             This command has full access to the screen even
  678.             if the screen has been shrunk with the 's' command.
  679.             Use the C command to change the text color.
  680.  
  681.             1st parameter =  column ( 1 to 80 )
  682.             2nd parameter =  row    ( 1 to Max needed)
  683.             3rd parameter = string of characters ending with a @
  684.  
  685.             EXAMPLE  esc{R6:w10,20,Back to Humans - by Queen@t52:
  686.                      R3:esc}esc#A
  687.  
  688.                     -12-
  689.  
  690.                  eXtended Commands
  691.                  -----------------
  692.  
  693.               Extended commands are invoked by a captial
  694.               X and a number ranging from 0 to 9999.
  695.               X COMMANDS are ONLY available while in a
  696.               GRAPHICS mode!
  697.  
  698.               "Some values skipped to help hold slight
  699.                syntax compatibility with IG and BIG."
  700.     . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
  701.  
  702.     X4  DEFINE and LOAD ZONE data   X4,0,0,0,79,49,3,f/L:
  703.     -----------------------------
  704.                  X4 = command identifier
  705.                  Defines a rectangular area and associates a
  706.                  string of characters with it, a ZONE.
  707.                  The string is sent to the keyboard buffer by
  708.                  the " < " command if the ARROW key option is
  709.                  used.  Most MOUSE driver software can produce
  710.                  ARROW key values and ENTER when the left button
  711.                  is pressed, this allows "Point and Click"
  712.                  operation of remote systems or the sending
  713.                  of short commands to the DOS command line.
  714.  
  715.         Zone ID  ->      1st parameter = zone number to define/load
  716.                  This is a number between 0-63 or
  717.                  optional value is 9999. If Zone ID is
  718.                  9999  ALL Zone's retangular areas
  719.                  are defined as -1,-1,-1,-1 by Condor
  720.                  internally.  This is to give a quick
  721.                  clean slate.
  722.                  When "Zone Loopback" is on the
  723.                  '<' input command will continue to
  724.                  poll a user until he selects a valid
  725.                  defined ZONE or hits the ESC key.
  726.                  examples X4,9999:
  727.                       X4,9998:  Zone Loopback ON
  728.                       X4,9997:  Zone Loopback OFF
  729.                             (default loopback OFF)
  730.                  No other parameters are required if
  731.                  Zone ID is 9999-9997.
  732.  
  733.      Define Rectangle ->     2nd parameter = upper left  corner X coordinate
  734.                  3rd parameter = upper left  corner Y coordinate
  735.                  4th parameter = lower right corner X coordinate
  736.                  5th parameter = lower right corner Y coordinate
  737.      Load string data ->     6th parameter = number of characters in string
  738.                          to transmit to the keyboard,
  739.                          maximum 4, this limit imposed
  740.                          to keep things like "FORMAT C:\"
  741.                          from being hidden in a graphic.
  742.                  7th = the string itself with a ending : seperator,
  743.                    don't count the seperator as part of the
  744.                    string length required for 6th parameter.
  745.  
  746.             example esc{R16:X4,0,0,0,79,49,1,G:esc}esc#A
  747.  
  748.                     -13-
  749.  
  750.             S Y S O P S  &  BBS USERs IMPORTANT!!!!
  751.  
  752.     X5 Input '<' COMMAND LOCK   X5,3,8905,2345,1758:
  753.     -------------------------
  754.               X5 is DIGITAL LOCK to turn ZONE input on/off
  755.               for BBS LOCAL side, affects the '<' input command.
  756.               ALL users set your ACCESS code.
  757.               Replace the xxxx,xxxx,xxxx with a made up sequence.
  758.               ie  X5,3,1,8,1959:  My birthday.
  759.  
  760.               Where xxxx = any number between 0-9999
  761.               esc = ASCII character value 27
  762.  
  763.       USERS  --->    "X5,3,xxxx,xxxx,xxxx:"  SETS your INPUT Command
  764.               lockout access code,  this access code can only be
  765.               set once at BOOTUP when all the ACCESS CODEs are at
  766.               zero, further access to ANY X5 command requires
  767.               YOUR access Code.  ALL should set a ACCESS code!
  768.         example-> ECHO ON
  769.               REM - esc{R4:X5,3,xxxx,xxxx,xxxx:R3:esc}esc#A
  770.  
  771.       SYSOPs --->     This SETs access code and LOCKs out  < INPUT.
  772.               At BOOTUP execute in a TEXT file TYPE"ed"
  773.               from your AUTOEXEC.BAT or turn ECHO ON and make it a
  774.               REM line in AUTOEXEC.BAT, a sequence like:
  775.       ECHO ON
  776.       REM - esc{R4:X5,3,xxxx,xxxx,xxxx:X5,0,xxxx.xxxx,xxxx:R3:esc}esc#A
  777.  
  778.       SYSOPs --->    "X5,0,xxxx,xxxx,xxxx:" turns '<' INPUT OFF,
  779.               This is done from a text file TYPE"ed" to CONDOR
  780.               DON'T put this in a MENU!  Put it somewhere
  781.               only the SYSOP can SEE.  This command shuts
  782.               down the < INPUT command,  you don't want the
  783.               < INPUT command working on the BBS local side
  784.               except to test a MENU you create.  If you don't
  785.               shut down the < INPUT command on the BBS side the
  786.               BBS will wait forever for input from the sysop's
  787.               keyboard!  You must do this privately only where
  788.               the sysop's Condor sees it, you don't want put it
  789.               in MENU text and shut down < INPUT on the USER SIDE.
  790.  
  791.       SYSOPs --->      "X5,1,xxxx,xxxx,xxxx:"  Turns the < INPUT command
  792.                access back ON.  Do this to make < INPUT work for
  793.                Point & Click Menu TESTing.  Then SHUT it OFF!!!
  794.         example->  ECHO ON
  795.                REM - esc{R4:X5,1,xxxx,xxxx,xxxx:R3:esc}esc#A
  796.  
  797.              See  LOCK.BAT, UNLOCK.BAT, ACCESS.BAT for extra help.
  798.     .......................................................................
  799.  
  800.     X6 Set ARROW key Step Rates     X6,12,10:
  801.     ---------------------------
  802.                X6 = command identifier
  803.                Set the X Y step rates for the arrow key
  804.                key movements of the pointer invoked
  805.                by the < input command used with the ZONES.
  806.  
  807.                1st parameter =
  808.                 X step rate range 1 to 32
  809.                2nd parameter =
  810.                 Y step rate range 1 to 32
  811.  
  812.                 example esc{R18:X6,16,10:esc}esc#A
  813.  
  814.                     -14-
  815.  
  816.  
  817.     Z  Rectangle    syntax example  Z0,0,639,199:
  818.     ------------
  819.             Z = Command identifier
  820.  
  821.             Draws a rectangle, you specify
  822.             the upper left and lower right
  823.             corner coordinates.  Use the
  824.             C command to change colors and
  825.             the H command to draw a solid
  826.             instead of a frame.
  827.  
  828.             1st parameter = upper left corner  X coordinate
  829.             2nd parameter = upper left corner  Y coordinate
  830.             3rd parameter = lower right corner X coordinate
  831.             4th parameter = lower right corner Y coordinate
  832.  
  833.             EXAMPLE esc{R6:Z20,50,277,189:t48:b15:R3:esc}esc#A
  834.  
  835.     .......................................................................
  836.  
  837.  
  838.     z  TEXT Rectangle       syntax example  z1,1,80,25,*:
  839.     -----------------
  840.  
  841.             z = Command identifier
  842.  
  843.             Prints a rectangle made of a specified
  844.             character with the upper left corner and
  845.             lower right corners specifed as column and
  846.             row coordinates.  You can get high ascii
  847.             characters by holding alt and typing the ascii
  848.             value on the numeric keypad.  Useful is ascii
  849.             219 for FILLING large areas and then only using
  850.             the slow F or f command to fill in the edges.
  851.  
  852.             1st parameter = upper left  corner COLUMN ( 1 to 80 )
  853.             2nd parameter = upper left  corner ROW    ( 1 to 25 )
  854.             3rd parameter = lower right corner COLUMN ( 1 to 80 )
  855.             4th parameter = lower right corner ROW    ( 1 to 25 )
  856.             5th parameter = CHARACTER to make the rectangle with
  857.                     followed by the : just like a number
  858.                     value.
  859.             EXAMPLE esc{R6:z4,3,8,12,X:t48:b18:R3:esc}esc#A
  860.  
  861.     .......................................................................
  862.  
  863.  
  864.     /  COMMENT     syntax example /Anything you like ending with a@
  865.     ----------
  866.                / = command identifer
  867.                Use this to add comments inside CONDOR script.
  868.                It has no effect and will not be printed to the screen.
  869.                The Comment must BEGIN with a /  and end with a @
  870.                Maximum length of a comment is /...127 characters...@
  871.  
  872.                example esc{R16:b0:/We just set 640x350x16@R3:esc}esc#A
  873.  
  874.                     -15-
  875.  
  876.     &  LOOP a command(s)     &0,198,6,0,L,4,0,0,x,y:
  877.     --------------------
  878.  
  879.             & = command identifier
  880.  
  881.             Loops a command a specified number of times with
  882.             stepping, special options for XOR ing and the
  883.             write text command.   You can loop a
  884.             chain of commands, see parameter 5,  BUT you can't
  885.             loop a loop.  Still this command is very powerful
  886.             and worth every effort to learn!
  887.             Note: PRESS the CTRL key to abort a loop.
  888.  
  889.             1st parameter = FROM value
  890.                 if FROM value bigger than TO value
  891.                 loop will detect and step backwards.
  892.  
  893.             2nd parameter = TO value
  894.             3rd parameter = step value, positive number only.
  895.             4th parameter = DELAY  roughly a 360th of a second
  896.                     between each step of the loop.
  897.             5th parameter = command Identifier to loop.
  898.                 optional specification character after 5th
  899.                 parameter instead of comma:
  900.                    | = XOR stepping
  901.                    @ = get text for w command everytime
  902.                    otherwise text written from loop
  903.                    with the w command is last text
  904.                    written with w command before the
  905.                    loop was executed.  w command now
  906.                    ignores CR and LF so loop command
  907.                    can be used for easy written text
  908.                    placement with the  loop's stepping.
  909.            NOTE: (Chain Gang) If a > symbol is given here as a command
  910.                   identifer chain gang option is invoked.
  911.                   This allows multiple commands to LOOPed.
  912.                   Instead of one command specified for this
  913.                   parameter a string of command identifers
  914.                   are passed.
  915.                   The > to get CONDOR's attention to chain-
  916.                   gang, and ending with the @ FOLLOWED by a
  917.                   comma.   Like this >CL@,
  918.                     C is at command position 0
  919.                     L is at command position 1
  920.                   The position of the command is the key
  921.                   to which command will be executed.
  922.                   There can be up to 128 (0-127) commands in
  923.                   this command string in any order you like.
  924.  
  925.     Example: switching line color and drawing lines too
  926.     esc{R14:&0,636,6,0,>CL@,16,0)1,3:1)319,99,x,20:0)1,2:1)319,99,+2,20:
  927.         t48:b11:R3:esc}esc#A
  928.     You can replace the  )  above with the commands themself
  929.     (or any non-numeric character) like so:
  930.     esc{R14:&0,636,6,0,>CL@,16,0C1,1:1L319,99,x,179:0C1,2:1L319,99,+2,179:
  931.         t48:b12:R3:esc}esc#A
  932.  
  933.             ( continued on next page )
  934.  
  935.  
  936.                     -16-
  937.  
  938.             6th parameter = total number of parameters command(s)
  939.                 that are being looped requires.  You are required
  940.                 to specify the total number the command(s) requires
  941.                 ie L command requires 4 , ie C command 2.
  942.                 If using the CHAIN GANG option a L command requires
  943.                 5 parameters, a C command 3.
  944.                 You can specify multiples of the required number
  945.                 such as 8 or 12 for the L command, Maximum up to
  946.                 2048, for LOOPing several L ine commands at once,
  947.                 this works sort of like BASIC's READ DATA
  948.                 statements between each LOOP step.
  949.  
  950.               REMAINING parameters = whatever the command(s) being
  951.                 looped requires.  If you use a "x" as a
  952.                 parameter it will be stepped in the direction
  953.                 of the FROM TO values, use a "y" and the loop
  954.                 will step the value in a reverse direction.
  955.                 You can use both "x" and "y" at the same time.
  956.                 If you use a number it will remain as a constant
  957.                 for the command being looped through out the
  958.                 loop execution.
  959.  
  960.                  You can preceed constants for a command being
  961.                  LOOPed with +,-, or !
  962.  
  963.                  +CONSTANT will ADD the CONSTANT to the x step
  964.                   value.
  965.  
  966.                  -CONSTANT will SUBTRACT the CONSTANT from the
  967.                   x step value.
  968.  
  969.                  !CONSTANT will SUBTRACT the x step value from
  970.                   the CONSTANT.
  971.  
  972.            syntax example &10,50,4,0,L,4,x,+90,!639,-2:
  973.  
  974.     LOOP example, Written text option:
  975.     esc{R6:&1,7,1,0,w@2,25,x,A. Item 1@
  976.     B. Item 2@
  977.     C. Item 3@
  978.     D. Item 4@
  979.     E. Item 5@
  980.     F. Item 6@
  981.     G. Item 7@
  982.     t72:b4:R3:esc}esc#A
  983.  
  984.     Example of loop used to READ DATA and step within at the same time in
  985.     both directions.
  986.     esc{R6:&0,639,4,0,L,16,319,99,x,0:319,99:y,0:319,99,x,199:319,99:y,199:
  987.         t52:b16:R3:esc}esc#A
  988.  
  989.                     -17-
  990.     <  INPUT Command   <1,0,1:
  991.     ----------------
  992.                < = command identifier
  993.                Gets input from user's keyboard and transmits it as soon
  994.                as the LAST command in the Condor Buffer is executed.
  995.                Should be used near the end of a MENU, as the BBS will
  996.                continue to send to the terminal while the INPUT command
  997.                is waiting on the user.  This is so the BBS will be
  998.                waiting for INPUT when CONDOR sends the user's response
  999.                at buffer excution exit.  The INPUT command is good for
  1000.                letting you use any resolution you want for a BBS MENU
  1001.                and then to issue some reset commands.
  1002.              Also the < input command can optionally
  1003.                INVOKE ARROW key routine for the X4 command
  1004.                so ZONES can be pointed to and clicked on, you must
  1005.                use X4 to define and load the zone strings first and
  1006.                you should use CONDOR to draw some borders(ICONS) around
  1007.                the zones so the user will know where and what he is
  1008.                selecting when he clicks on a ZONE, that way you
  1009.                have the job of cosmetics, that's half the fun anyway.
  1010.                The selected Zone's associated data string is
  1011.                transmitted to the BBS as soon as CONDOR executes
  1012.                the last command in it's buffer.  ZONE 63 is the default
  1013.                ZONE, it's associated data string will be sent if no
  1014.                ZONES match where the user clicked.  You should always
  1015.                define ZONE 63.   PLEASE see command X5 and use it right
  1016.                away as the input command can hang up a BBS on the local
  1017.                side and should be LOCKED out except when a SYSOP is
  1018.                testing menus he made using the <  command.
  1019.                You may find the X6 command useful too.
  1020.            1st parameter = Transmitt carriage return at the end
  1021.                    of the string INPUTted?  1 = YES  0 = NO
  1022.            2nd parameter = type of INPUT
  1023.                    0 = One key,  (hot key)
  1024.                    1 = String, with a return to
  1025.                        end input from user,
  1026.                        max string length = 14
  1027.                    2 = MOUSE ZONE, activate a POLYMARKER
  1028.                        mouse pointer, use the " T " command
  1029.                        to select mouse type and size and the
  1030.                        " C " command to set mouse color.
  1031.                        User moves mouse with ARROW keys and
  1032.                        clicks on a "ZONE". The associated
  1033.                        ZONE string is copied into INPUT's
  1034.                        buffer to be transmitted to BBS
  1035.                        at the end of the CONDOR buffer
  1036.                        execution via the keyboard buffer.
  1037.            3rd parameter = Output options
  1038.                    0 = Don't show input typed from user
  1039.                        on his screen. Has no effect on
  1040.                        Mouse ZONES.
  1041.                    1 = Show input typed from user on screen.
  1042.                        Has no effect on Mouse ZONES.
  1043.                    2 = Show input but throw it away, don't
  1044.                        transmit it at the end of the chain.
  1045.                        Does effect Mouse ZONE.
  1046.                    3 = Don't show input from user, and throw it
  1047.                        away too.  Does effect Mouse ZONE.
  1048.  
  1049.             ( continued on next page )
  1050.  
  1051.                     -18-
  1052.  
  1053.        Note:  If 2 ZONES areas are over lapping on the screen the
  1054.           ZONE with the lower value ID number will get selected when
  1055.           the mouse is clicked on both ZONEs at the same time.
  1056.  
  1057.                    +----+--------------------+
  1058.       user clicks in here ---> |ID=1|                    |
  1059.       ZONE 1 gets selected     +----+   ID=10            |
  1060.                    |                         |
  1061.                    +-------------------------+
  1062.  
  1063.                    +----+--------------------+
  1064.       user clicks in here ---> |ID=7|                    |
  1065.       ZONE 2 gets selected     +----+   ID=2             |
  1066.                    |                         |
  1067.                    +-------------------------+
  1068.  
  1069.           Note also that the mouse is driven by the ARROW keys,
  1070.           so the mouse driver has to produce these or user presses
  1071.           ARROW keys.
  1072.  
  1073.     simple example  esc{R16:C3,12:w6,10,Press the ARROW KEYs then ENTER!@
  1074.                 w2,11,Pick a square! It could be a fancy ICON.@
  1075.                 X4,9999:X4,9998:C1,11:
  1076.                 Z1,1,150,99:X4,0,1,1,150,99,4,left:
  1077.                 Z160,1,350,99:X4,55,160,1,350,99,4,rite:
  1078.                 X4,63,0,0,639,349,4,oops:X6,16,16:
  1079.                 C3,14:C0,14:T3,4:<0,2,1:R3:esc}esc#A
  1080.  
  1081.           NOTE:   Don't use POINT & CLICK ZONES  in graphics mode 19.
  1082.               XORing doesn't work in that mode so the pointer will
  1083.               make a mess.  No real harm but it looks bad.
  1084.  
  1085.                     -19-
  1086.  
  1087.      ? Ask CONDOR       ?0:
  1088.      ------------
  1089.             ? = command identifier
  1090.             Asks the CONDOR device questions.
  1091.             It loads the reply into the keyboard buffer and it
  1092.             is as if the user typed it. Can be issued in TEXT mode.
  1093.  
  1094.             1st parameter selects the question to ask.
  1095.                 0 = Ask Condor system info, CONDOR will
  1096.                     TYPE in ASCII the version number it is,
  1097.                     what video hardware it finds and the
  1098.                     current video mode selected.
  1099.                     A Condor response to a ?0: query
  1100.                     esc{?0:esc}esc#A
  1101.                     would look something like:
  1102.  
  1103.                     V4.0:$I:*D:
  1104.  
  1105.                     and interpreted by the HOST asker as
  1106.                     Version 4.0:$Hardware I:*Current_mode D:
  1107.  
  1108.                   HARDWARE CHART:
  1109.                   ---------------------------------------
  1110.                   $A: no display
  1111.                   $B: MDA mono display
  1112.                   $C  CGA color
  1113.                   $D  (reserved)
  1114.                   $E  EGA color
  1115.                   $F  EGA mono
  1116.                   $G  Professional Graphics Controller
  1117.                   $H  VGA analog mono
  1118.                   $I  VGA analog color
  1119.                   $J  (reserved)
  1120.                   $K  MCGA digital color
  1121.                   $L  MCGA analog mono
  1122.                   $M  MCGA analog color
  1123.  
  1124.             VIDEO MODE CHART:  Res         Colors    Type
  1125.             ---------------------------------------------------
  1126.             *A:               40x25          16      TEXT
  1127.             *B:               40x25          16      TEXT
  1128.             *C:               80x25          16      TEXT
  1129.             *D:               80x25          16      TEXT
  1130.             *E:               320x200        4       GRAPHICS
  1131.             *F:               320x200        4       GRAPHICS
  1132.             *G:               640x200        2       GRAPHICS
  1133.             *H:               80x25          2       TEXT
  1134.             *I:               N/A            N/A     N/A
  1135.             *J:               N/A            N/A     N/A
  1136.             *K:               N/A            N/A     N/A
  1137.             *L:               N/A            N/A     N/A
  1138.             *M:               N/A            N/A     N/A
  1139.             *N:               320x200        16      GRAPHICS
  1140.             *O:               640x200        16      GRAPHICS
  1141.             *P:               640x350        2       GRAPHICS
  1142.             *Q:               640x350        16      GRAPHICS
  1143.             *R:               640x480        2       GRAPHICS
  1144.             *S:               640x480        16      GRAPHICS
  1145.             *T:               320x200        256     GRAPHICS
  1146.  
  1147.                     -20-
  1148.  
  1149.                 ANSI SUPPORT
  1150.                 ------------
  1151.  
  1152.        CONDOR supports ANSI escape sequences.   You can't place
  1153.     ANSI commands in the CONDOR buffer and execute them BUT you can first
  1154.     switch to a GRAPHICS mode with a CONDOR  Rx: command then draw some
  1155.     lines, what have you, with CONDOR and at exit don't do a R3: command.
  1156.     The ANSI commands will still work, the only thing is that you will
  1157.     not get the ANSI background colors and BLINKing characters, this
  1158.     is how you mix CONDOR and ANSI commands to get the best of both.
  1159.     If you switch back to a TEXT mode then you get the ANSI character's
  1160.     background color and BLINK.  CONDOR's  R3: switches to color TEXT mode
  1161.     80x25.  I left most of the cursor positioning work for the ANSI
  1162.     commands to save on memory, CONDOR has to fit in 64K to work and I
  1163.     want to expand it little in the future.
  1164.  
  1165.     ANSI COMMANDS SUPPORTED:
  1166.     ------------------------
  1167.         ? = numeric value
  1168.  
  1169.         esc[?;?H                Move cursor to line, column.  If no
  1170.                     parameters specified cursor is sent
  1171.                     to HOME (1,1)
  1172.  
  1173.         esc[?;?f                Exactly the same as the above command.
  1174.  
  1175.         esc[?A                  Move cursor UP.  Moves cursor up by the
  1176.                     number of lines specifed without
  1177.                     changing columns.  If cursor is at the
  1178.                     top line this command is ignored.
  1179.  
  1180.         esc[?B                  Move cursor DOWN.  Moves cursor down
  1181.                     by the number of lines specifed without
  1182.                     changing columns.  If cursor is at the
  1183.                     bottom line this command is ignored.
  1184.  
  1185.         esc[?C                  Cursor FORWARD.  Moves cursor forward
  1186.                     by the specified number columns without
  1187.                     changing lines. If the cursor is at the
  1188.                     rightmost column command is ignored.
  1189.  
  1190.         esc[?D                  Cursor BACKWARD.  Moves cursor backward
  1191.                     by the specified number columns without
  1192.                     changing lines. If the cursor is at the
  1193.                     leftmost column command is ignored.
  1194.  
  1195.         esc[s                   SAVE cursor position.  Get current
  1196.                     cursor position and remember it.
  1197.                     Use the esc[u sequence to set cursor
  1198.                     to saved position.
  1199.  
  1200.         esc[u                   RESTORE Cursor Position.  Sets the
  1201.                     cursor to the SAVEed position
  1202.                     established with the esc[s sequence.
  1203.  
  1204.         esc[2J                  Erase the TEXT Screen.  Clears the
  1205.                     TEXT screen only as defined by
  1206.                     CONDOR's   's' command
  1207.                     and moves the cursor to HOME (1,1).
  1208.  
  1209.                     -21-
  1210.  
  1211.                ( ANSI Commands Continued )
  1212.  
  1213.         esc[K                   ERASE Line.  Clears all characters from
  1214.                     cursor positon to the end of the line.
  1215.  
  1216.         esc[?;?;?m              Set TEXT Attributes,
  1217.                     TEXT Foreground colors and
  1218.                     TEXT Background colors.
  1219.  
  1220.                     TEXT Attribute values:
  1221.                         0 = All attributes OFF
  1222.                         1 = Bold ON
  1223.                         4 = NO EFFECT
  1224.                         5 = BLINK ON
  1225.                         7 = REVERSE Video ON
  1226.                         8 = CONCEALED ON
  1227.  
  1228.                     FORGROUND color values:
  1229.                         30 = BLACK
  1230.                         31 = RED
  1231.                         32 = GREEN
  1232.                         33 = YELLOW
  1233.                         34 = BLUE
  1234.                         35 = MAGENTA
  1235.                         36 = CYAN
  1236.                         37 = WHITE
  1237.  
  1238.                     BACKGROUND color values:
  1239.                         40 = BLACK
  1240.                         41 = RED
  1241.                         42 = GREEN
  1242.                         43 = YELLOW
  1243.                         44 = BLUE
  1244.                         45 = MAGENTA
  1245.                         46 = CYAN
  1246.                         47 = WHITE
  1247.  
  1248.        The ANSI commands esc[?h, esc[?l, esc[code;string;...p  are
  1249.     NOT supported.  The ANSI esc[6 command used for ANSI auto-detect is not
  1250.     supported,  SEE CONDOR's  '?0:' command for CONDOR 4.0+ auto-detection.
  1251.  
  1252.     -----------------------------------------------------------------------
  1253.  
  1254.       I hope CONDOR will make changes in the online world but it
  1255.     depends on you,  DEMAND  "EXTERNAL"  ANSI support as AT LEAST optional
  1256.     in MAJOR TERMINALs and BBSs.   EXTERNAL ANSI support provides your
  1257.     terminal or BBS with access to CONDOR.SYS   In Turbo C this is as
  1258.     SIMPLE as bdos(2,character,0);  that's all they got to do and CONDOR
  1259.     will respond!!!  The faster DIRECT TEXT output is just that TEXT output
  1260.     it does not work in graphics modes!
  1261.  
  1262.  
  1263.